home *** CD-ROM | disk | FTP | other *** search
- package D;
-
- // $FF: renamed from: D.I
- public class class_0 {
- // $FF: renamed from: I (byte, byte, byte, byte[][], boolean[][]) boolean
- public static final boolean method_0(byte var0, byte var1, byte var2, byte[][] var3, boolean[][] var4) {
- byte var5 = println(var0);
- byte var6 = abs(var0);
- byte var7 = 0;
- byte var8 = 0;
- byte var9 = 0;
- byte[][] var10 = new byte[8][8];
- byte[][] var11 = new byte[][]{{-1, 1}, {-2, 2}};
- append(var3, var10);
- boolean var12 = abs(var5, var6, var10, var1, var2);
- byte var13 = 0;
-
- for(byte var14 = 0; var14 < 8 && !var12; ++var14) {
- for(byte var15 = 0; var15 < 8 && !var12; ++var15) {
- if (var4[var14][var15]) {
- var12 = false;
-
- for(byte var16 = -1; var16 < 2 && !var12; ++var16) {
- for(byte var17 = -1; var17 < 2 && !var12; ++var17) {
- if (var16 != 0 || var17 != 0) {
- int var18 = abs(method_11(var14, var15), var16, var17, var1, var10);
- var7 = (byte)(var18 >> 8);
- if (var7 != 0) {
- var13 = (byte)(var18 & 255);
- var8 = println(var13);
- var9 = abs(var13);
- if (method_3(var8, var9, var14, var15, var10, var0, var2, true)) {
- var12 = true;
- }
- }
- }
- }
- }
-
- if (!var12) {
- int var25 = 0;
- int var28 = 0;
-
- for(byte var19 = 0; var19 < 2 && !var12; ++var19) {
- for(byte var20 = 0; var20 < 2 && !var12; ++var20) {
- var25 = var14 + var11[0][var19];
- var28 = var15 + var11[1][var20];
- if (var25 > -1 && var25 < 8 && var28 > -1 && var28 < 8 && method_4(var3[var25][var28]) == 5 && method_6(var3[var25][var28]) == var1) {
- var12 = toString((byte)var25, (byte)var28, var14, var15, var10, var0, var2);
- }
-
- if (!var12) {
- var25 = var14 + var11[1][var20];
- var28 = var15 + var11[0][var19];
- if (var25 > -1 && var25 < 8 && var28 > -1 && var28 < 8 && method_4(var3[var25][var28]) == 5 && method_6(var3[var25][var28]) == var1) {
- var12 = toString((byte)var25, (byte)var28, var14, var15, var10, var0, var2);
- }
- }
- }
- }
- }
- }
- }
- }
-
- return !var12;
- }
-
- // $FF: renamed from: I (byte, byte, byte, byte[][]) boolean
- public static final boolean method_1(byte var0, byte var1, byte var2, byte[][] var3) {
- boolean var4 = false;
- byte[][] var5 = new byte[8][8];
- append(var3, var5);
- byte var6 = 0;
-
- for(byte var7 = 0; var7 < 8 && !var4; ++var7) {
- for(byte var8 = 0; var8 < 8 && !var4; ++var8) {
- var6 = var5[var7][var8];
- if (method_4(var6) != 0 && method_6(var6) == var1) {
- switch (method_4(var6)) {
- case 1:
- var4 = abs(var7, var8, var5, var1, var2);
- break;
- case 2:
- var4 = append(var7, var8, var5, var1, var2, var0);
- break;
- case 3:
- var4 = arraycopy(var7, var8, var5, var1, var2, var0);
- break;
- case 4:
- var4 = out(var7, var8, var5, var1, var2, var0);
- break;
- case 5:
- var4 = println(var7, var8, var5, var1, var2, var0);
- break;
- case 6:
- var4 = toString(var7, var8, var5, var1, var2, var0);
- }
- }
- }
- }
-
- return !var4;
- }
-
- public static final boolean abs(byte var0, byte var1, byte[][] var2, byte var3, byte var4) {
- boolean var5 = false;
-
- for(int var6 = -1; var6 < 2 && !var5; ++var6) {
- if (var0 + var6 > -1 && var0 + var6 < 8) {
- for(int var7 = -1; var7 < 2 && !var5; ++var7) {
- if ((var6 != 0 || var7 != 0) && var1 + var7 > -1 && var1 + var7 < 8 && method_6(var2[var0 + var6][var1 + var7]) != var3) {
- var5 = append(var0, var1, (byte)(var0 + var6), (byte)(var1 + var7), var2, var4, false);
- System.out.println("Can king move X=" + var0 + " Y=" + var1 + " to X=" + (var0 + var6) + " Y=" + (var1 + var7) + " =" + var5);
- }
- }
- }
- }
-
- return var5;
- }
-
- public static final boolean append(byte var0, byte var1, byte[][] var2, byte var3, byte var4, byte var5) {
- return out(var0, var1, var2, var3, var4, var5) || arraycopy(var0, var1, var2, var3, var4, var5);
- }
-
- public static final boolean arraycopy(byte var0, byte var1, byte[][] var2, byte var3, byte var4, byte var5) {
- boolean var6 = false;
-
- for(int var7 = -1; var7 < 2 && !var6; ++var7) {
- if (var7 != 0) {
- if (var0 + var7 > -1 && var0 + var7 < 8 && method_6(var2[var0 + var7][var1]) != var3) {
- var6 = out(var0, var1, (byte)(var0 + var7), var1, var2, var5, var4);
- }
-
- if (!var6 && var1 + var7 > -1 && var1 + var7 < 8 && method_6(var2[var0][var1 + var7]) != var3) {
- var6 = out(var0, var1, var0, (byte)(var1 + var7), var2, var5, var4);
- }
- }
- }
-
- return var6;
- }
-
- public static final boolean out(byte var0, byte var1, byte[][] var2, byte var3, byte var4, byte var5) {
- boolean var6 = false;
-
- for(int var7 = -1; var7 < 2 && !var6; ++var7) {
- if (var7 != 0 && var0 + var7 > -1 && var0 + var7 < 8) {
- for(int var8 = -1; var8 < 2 && !var6; ++var8) {
- if (var8 != 0 && var1 + var8 > -1 && var1 + var8 < 8 && method_6(var2[var0 + var7][var1 + var8]) != var3) {
- var6 = println(var0, var1, (byte)(var0 + var7), (byte)(var1 + var8), var2, var5, var4);
- }
- }
- }
- }
-
- return var6;
- }
-
- public static final boolean println(byte var0, byte var1, byte[][] var2, byte var3, byte var4, byte var5) {
- boolean var6 = false;
- byte[][] var7 = new byte[][]{{-1, 1}, {-2, 2}};
- int var8 = 0;
- int var9 = 0;
-
- for(int var10 = 0; var10 < 2 && !var6; ++var10) {
- for(int var11 = 0; var11 < 2 && !var6; ++var11) {
- var8 = var0 + var7[0][var10];
- var9 = var1 + var7[1][var11];
- if (var8 > -1 && var8 < 8 && var9 > -1 && var9 < 8 && method_6(var2[var8][var9]) != var3) {
- var6 = toString(var0, var1, (byte)var8, (byte)var9, var2, var5, var4);
- }
-
- if (!var6) {
- var8 = var0 + var7[1][var11];
- var9 = var1 + var7[0][var10];
- if (var8 > -1 && var8 < 8 && var9 > -1 && var9 < 8 && method_6(var2[var8][var9]) != var3) {
- var6 = toString(var0, var1, (byte)var8, (byte)var9, var2, var5, var4);
- }
- }
- }
- }
-
- return var6;
- }
-
- public static final boolean toString(byte var0, byte var1, byte[][] var2, byte var3, byte var4, byte var5) {
- boolean var6 = false;
-
- for(byte var7 = -1; var7 < 2 && !var6; ++var7) {
- if (var0 + var7 > -1 && var0 + var7 < 8) {
- var6 = abs(var0, var1, (byte)(var0 + var7), (byte)(var1 + var4), var2, var5, var4, var3);
- }
- }
-
- return var6;
- }
-
- // $FF: renamed from: I (byte, byte, byte, byte[][], boolean, boolean[][]) boolean
- public static final boolean method_2(byte var0, byte var1, byte var2, byte[][] var3, boolean var4, boolean[][] var5) {
- int var6 = 0;
- byte var7 = 0;
- byte var8 = 0;
- byte var9 = 0;
- byte var10 = 0;
- byte var11 = (byte)(var1 ^ 1);
- boolean var12 = false;
- byte var13 = println(var0);
- byte var14 = abs(var0);
- byte[][] var15 = new byte[][]{{-1, 1}, {-2, 2}};
-
- for(byte var16 = -1; var16 < 2 && (!var12 || var4); ++var16) {
- for(byte var17 = -1; var17 < 2 && (!var12 || var4); ++var17) {
- if (var16 != 0 || var17 != 0) {
- var6 = abs(var0, var16, var17, var11, var3);
- var7 = (byte)(var6 >> 8);
- if (var7 != 0) {
- var8 = (byte)(var6 & 255);
- var9 = println(var8);
- var10 = abs(var8);
- switch (method_4(var7)) {
- case 1:
- var12 = append(var9, var10, var13, var14);
- if (var4 && var12) {
- arraycopy(var9, var10, var13, var14, var5);
- }
- break;
- case 2:
- var12 = arraycopy(var9, var10, var13, var14);
- if (var4 && var12) {
- arraycopy(var9, var10, var13, var14, var5);
- }
- break;
- case 3:
- var12 = out(var9, var10, var13, var14);
- if (var4 && var12) {
- arraycopy(var9, var10, var13, var14, var5);
- }
- break;
- case 4:
- var12 = println(var9, var10, var13, var14);
- if (var4 && var12) {
- arraycopy(var9, var10, var13, var14, var5);
- }
- case 5:
- default:
- break;
- case 6:
- var12 = toString(var9, var10, var13, var14, (byte)(-var2));
- if (var4 && var12) {
- arraycopy(var9, var10, var13, var14, var5);
- }
- }
- }
- }
- }
- }
-
- if (!var12 || var4) {
- int var26 = 0;
- int var18 = 0;
-
- for(int var19 = 0; var19 < 2 && !var12; ++var19) {
- for(int var20 = 0; var20 < 2 && !var12; ++var20) {
- var26 = var13 + var15[0][var19];
- var18 = var14 + var15[1][var20];
- if (var26 > -1 && var26 < 8 && var18 > -1 && var18 < 8 && method_4(var3[var26][var18]) == 5 && method_6(var3[var26][var18]) != var1) {
- if (var4) {
- var5[var26][var18] = true;
- }
-
- var12 = true;
- }
-
- if (!var12) {
- var26 = var13 + var15[1][var20];
- var18 = var14 + var15[0][var19];
- if (var26 > -1 && var26 < 8 && var18 > -1 && var18 < 8 && method_4(var3[var26][var18]) == 5 && method_6(var3[var26][var18]) != var1) {
- if (var4) {
- var5[var26][var18] = true;
- }
-
- var12 = true;
- }
- }
- }
- }
- }
-
- return var12;
- }
-
- private static int abs(byte var0, byte var1, byte var2, byte var3, byte[][] var4) {
- byte var5 = println(var0);
- byte var6 = abs(var0);
- var5 = (byte)(var5 + var1);
- var6 = (byte)(var6 + var2);
- boolean var7 = false;
-
- byte var8;
- for(var8 = 0; var5 > -1 && var5 < 8 && var6 > -1 && var6 < 8 && !var7; var6 += var2) {
- var8 = var4[var5][var6];
- var7 = method_4(var8) != 0;
- var5 += var1;
- }
-
- if (var7 && method_6(var8) == var3) {
- var5 = (byte)(var5 - var1);
- var6 = (byte)(var6 - var2);
- return method_4(var8) << 8 | method_11(var5, var6);
- } else {
- return 0;
- }
- }
-
- // $FF: renamed from: I (byte, byte, byte, byte, byte[][], byte, byte, boolean) boolean
- public static final boolean method_3(byte var0, byte var1, byte var2, byte var3, byte[][] var4, byte var5, byte var6, boolean var7) {
- boolean var8 = false;
- byte var9 = var4[var0][var1];
- byte var10 = method_6(var9);
- byte var11 = method_4(var9);
- switch (var11) {
- case 1:
- var8 = append(var0, var1, var2, var3, var4, var6, var7);
- break;
- case 2:
- var8 = arraycopy(var0, var1, var2, var3, var4, var5, var6);
- break;
- case 3:
- var8 = out(var0, var1, var2, var3, var4, var5, var6);
- break;
- case 4:
- var8 = println(var0, var1, var2, var3, var4, var5, var6);
- break;
- case 5:
- var8 = toString(var0, var1, var2, var3, var4, var5, var6);
- break;
- case 6:
- var8 = abs(var0, var1, var2, var3, var4, var5, var6, var10);
- }
-
- return var8;
- }
-
- public static final boolean append(byte var0, byte var1, byte var2, byte var3, byte[][] var4, byte var5, boolean var6) {
- int var7 = var2 - var0;
- int var8 = Math.abs(var7);
- int var9 = Math.abs(var3 - var1);
- boolean var10 = false;
- byte[][] var11 = new byte[8][8];
- if (var8 < 2 && var9 < 2) {
- append(var4, var11);
- var10 = true;
- } else if (var8 == 2 && var9 == 0 && out(var4[var0][var1]) == 0) {
- int var12 = var7 > 0 ? 7 : 0;
- byte var13 = var4[var12][var1];
- if (!var6 && method_4(var13) == 3 && out(var13) == 0 && append(var0, var1, (byte)var12, var1, var4)) {
- append(var4, var11);
- int var14 = append(var0, var2);
- var10 = true;
-
- for(int var15 = 0; var15 < 2 && var10; ++var15) {
- arraycopy(var0, var1, (byte)(var0 + var14), var3, var11);
- if (method_2(method_11((byte)(var0 + var14), var3), method_6(var4[var0][var1]), var5, var11, false, (boolean[][])null)) {
- var10 = false;
- }
-
- arraycopy((byte)(var0 + var14), var3, var0, var1, var11);
- var14 <<= 1;
- }
-
- if (var10) {
- arraycopy((byte)var12, var1, (byte)(var2 - append(var0, var2)), var1, (byte[][])var11);
- }
- }
- }
-
- if (var10) {
- arraycopy(var0, var1, var2, var3, var11);
- if (!method_2(method_11(var2, var3), method_6(var11[var2][var3]), var5, var11, false, (boolean[][])null)) {
- append(var11, var4);
- } else {
- var10 = false;
- }
- }
-
- return var10;
- }
-
- public static final boolean arraycopy(byte var0, byte var1, byte var2, byte var3, byte[][] var4, byte var5, byte var6) {
- return println(var0, var1, var2, var3, var4, var5, var6) || out(var0, var1, var2, var3, var4, var5, var6);
- }
-
- public static final boolean out(byte var0, byte var1, byte var2, byte var3, byte[][] var4, byte var5, byte var6) {
- int var7 = var2 - var0;
- int var8 = var3 - var1;
- boolean var9 = false;
- byte[][] var10 = new byte[8][8];
- if ((var7 == 0 || var8 == 0) && append(var0, var1, var2, var3, var4)) {
- append(var4, var10);
- arraycopy(var0, var1, var2, var3, var10);
- if (!method_2(var5, method_6(var4[var0][var1]), var6, var10, false, (boolean[][])null)) {
- append(var10, var4);
- var9 = true;
- }
- }
-
- return var9;
- }
-
- public static final boolean println(byte var0, byte var1, byte var2, byte var3, byte[][] var4, byte var5, byte var6) {
- int var7 = Math.abs(var2 - var0);
- int var8 = Math.abs(var3 - var1);
- boolean var9 = false;
- byte[][] var10 = new byte[8][8];
- if (var7 == var8 && append(var0, var1, var2, var3, var4)) {
- append(var4, var10);
- arraycopy(var0, var1, var2, var3, var10);
- if (!method_2(var5, method_6(var4[var0][var1]), var6, var10, false, (boolean[][])null)) {
- append(var10, var4);
- var9 = true;
- }
- }
-
- return var9;
- }
-
- public static final boolean toString(byte var0, byte var1, byte var2, byte var3, byte[][] var4, byte var5, byte var6) {
- int var7 = Math.abs(var2 - var0);
- int var8 = Math.abs(var3 - var1);
- boolean var9 = false;
- byte[][] var10 = new byte[8][8];
- if (var7 == 1 && var8 == 2 || var7 == 2 && var8 == 1) {
- append(var4, var10);
- arraycopy(var0, var1, var2, var3, var10);
- if (!method_2(var5, method_6(var4[var0][var1]), var6, var10, false, (boolean[][])null)) {
- append(var10, var4);
- var9 = true;
- }
- }
-
- return var9;
- }
-
- public static final boolean abs(byte var0, byte var1, byte var2, byte var3, byte[][] var4, byte var5, byte var6, byte var7) {
- int var8 = var2 - var0;
- int var9 = Math.abs(var8);
- int var10 = var3 - var1;
- boolean var11 = false;
- byte var12 = 0;
- byte var13 = var4[var2][var1];
- byte[][] var14 = new byte[8][8];
- if (method_4(var4[var2][var3]) == 0) {
- if (var9 == 0) {
- if (var10 == var6) {
- append(var4, var14);
- var11 = true;
- } else if (var10 == var6 * 2 && out(var4[var0][var1]) == 0 && method_4(var4[var0][(byte)(var1 + var6)]) == 0) {
- var12 = 1;
- append(var4, var14);
- var11 = true;
- }
- } else if (method_4(var13) == 6 && method_6(var13) != var7 && toString(var13) == 1) {
- append(var4, var14);
- var14[var2][var1] = 0;
- var11 = true;
- }
- } else if (var10 == var6 && var9 == 1) {
- append(var4, var14);
- var11 = true;
- }
-
- if (var11) {
- arraycopy(var0, var1, var2, var3, var14);
- var14[var2][var3] = abs(var14[var2][var3], var12);
- if (!method_2(var5, var7, var6, var14, false, (boolean[][])null)) {
- append(var14, var4);
- var11 = true;
- } else {
- var11 = false;
- }
- }
-
- return var11;
- }
-
- public static final boolean append(byte var0, byte var1, byte var2, byte var3) {
- int var4 = Math.abs(var2 - var0);
- int var5 = Math.abs(var3 - var1);
- boolean var6 = false;
- if (var4 < 2 && var5 < 2) {
- var6 = true;
- }
-
- return var6;
- }
-
- public static final boolean arraycopy(byte var0, byte var1, byte var2, byte var3) {
- return println(var0, var1, var2, var3) || out(var0, var1, var2, var3);
- }
-
- public static final boolean out(byte var0, byte var1, byte var2, byte var3) {
- int var4 = var2 - var0;
- int var5 = var3 - var1;
- boolean var6 = false;
- if (var4 == 0 || var5 == 0) {
- var6 = true;
- }
-
- return var6;
- }
-
- public static final boolean println(byte var0, byte var1, byte var2, byte var3) {
- int var4 = Math.abs(var2 - var0);
- int var5 = Math.abs(var3 - var1);
- boolean var6 = false;
- if (var4 == var5) {
- var6 = true;
- }
-
- return var6;
- }
-
- public static final boolean toString(byte var0, byte var1, byte var2, byte var3, byte var4) {
- int var5 = Math.abs(var2 - var0);
- int var6 = var3 - var1;
- boolean var7 = false;
- if (var5 == 1 && var6 == var4) {
- var7 = true;
- }
-
- return var7;
- }
-
- public static final boolean append(byte var0, byte var1, byte var2, byte var3, byte[][] var4) {
- byte var5 = (byte)append(var0, var2);
- byte var6 = (byte)append(var1, var3);
- boolean var7 = false;
- var0 = (byte)(var0 + var5);
-
- for(byte var9 = (byte)(var1 + var6); (var0 != var2 || var9 != var3) && !var7; var9 += var6) {
- var7 = method_4(var4[var0][var9]) != 0;
- var0 += var5;
- }
-
- return !var7;
- }
-
- public static final void arraycopy(byte var0, byte var1, byte var2, byte var3, byte[][] var4) {
- var4[var2][var3] = method_9(println(var4[var0][var1], 1), 0);
- var4[var0][var1] = method_9((byte)0, 0);
- }
-
- // $FF: renamed from: I (byte) byte
- public static final byte method_4(byte var0) {
- return (byte)(var0 & 7);
- }
-
- // $FF: renamed from: I (byte, byte) byte
- public static final byte method_5(byte var0, byte var1) {
- var0 = (byte)(var0 & 120);
- return (byte)(var0 | var1);
- }
-
- // $FF: renamed from: Z (byte) byte
- public static final byte method_6(byte var0) {
- return (byte)(var0 >> 6 & 1);
- }
-
- // $FF: renamed from: I (byte, int) byte
- public static final byte method_7(byte var0, int var1) {
- var0 = (byte)(var0 & 63);
- return (byte)(var0 | var1 << 6);
- }
-
- // $FF: renamed from: C (byte) byte
- public static final byte method_8(byte var0) {
- return (byte)(var0 >> 3 & 1);
- }
-
- // $FF: renamed from: Z (byte, int) byte
- public static final byte method_9(byte var0, int var1) {
- var0 = (byte)(var0 & 119);
- return (byte)(var0 | var1 << 3);
- }
-
- public static final int out(byte var0) {
- return (byte)(var0 >> 4 & 1);
- }
-
- public static final byte println(byte var0, int var1) {
- var0 = (byte)(var0 & 111);
- return (byte)(var0 | var1 << 4);
- }
-
- public static final int toString(byte var0) {
- return (byte)(var0 >> 5 & 1);
- }
-
- public static final byte abs(byte var0, int var1) {
- var0 = (byte)(var0 & 95);
- return (byte)(var0 | var1 << 5);
- }
-
- public static final int append(byte var0, byte var1) {
- return var0 == var1 ? 0 : (var0 < var1 ? 1 : -1);
- }
-
- // $FF: renamed from: I (byte[][], byte) void
- public static final void method_10(byte[][] var0, byte var1) {
- byte var2 = (byte)(var1 ^ 1);
-
- for(int var3 = 0; var3 < var0.length; ++var3) {
- for(int var4 = 0; var4 < var0[var3].length; ++var4) {
- byte var5 = var0[var3][var4];
- if (method_6(var5) == var2 && method_4(var5) == 6 && toString(var5) == 1) {
- var0[var3][var4] = abs(var5, 0);
- }
- }
- }
-
- }
-
- private static void arraycopy(byte var0, byte var1, byte var2, byte var3, boolean[][] var4) {
- int var5 = append(var0, var2);
-
- for(int var6 = append(var1, var3); var0 != var2 || var1 != var3; var1 = (byte)(var1 + var6)) {
- var4[var0][var1] = true;
- var0 = (byte)(var0 + var5);
- }
-
- }
-
- // $FF: renamed from: Z (byte, byte) byte
- public static final byte method_11(byte var0, byte var1) {
- return (byte)(var0 << 3 | var1);
- }
-
- public static final byte println(byte var0) {
- return (byte)(var0 >> 3);
- }
-
- public static final byte abs(byte var0) {
- return (byte)(var0 & 7);
- }
-
- private static void append(byte[][] var0, byte[][] var1) {
- for(int var2 = 0; var2 < 8; ++var2) {
- System.arraycopy(var0[var2], 0, var1[var2], 0, 8);
- }
-
- }
- }
-